package com.dongan.pojo;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * <p>
 * 过程表
 * </p>
 *
 * @author longTao
 * @since 2021-06-15
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("m_procedure")
public class Procedure implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键不自增
     */
      @TableId(value = "ID", type = IdType.ASSIGN_ID)
    private Long id;

    /**
     * 父ID
     */
    @TableField("PARENT_ID")
    private Long parentId;

    /**
     * 细节的数量
     */
    @TableField("DETAILS_NUMBER")
    private BigDecimal detailsNumber;

    /**
     * 过程 ID
     */
    @TableField("PROCEDURE_ID")
    private String procedureId;

    /**
     *  过程名
     */
    @TableField("PROCEDURE_NAME")
    private String procedureName;

    /**
     * 劳动时间量
     */
    @TableField("LABOUR_HOUR_AMOUNT")
    private BigDecimal labourHourAmount;

    /**
     * 实际劳动时数
     */
    @TableField("REAL_LABOUR_HOUR_AMOUNT")
    private BigDecimal realLabourHourAmount;

    /**
     * 小计
     */
    @TableField("SUBTOTAL")
    private BigDecimal subtotal;

    /**
     * 真正的小计
     */
    @TableField("REAL_SUBTOTAL")
    private BigDecimal realSubtotal;

    /**
     * 模块小结
     */
    @TableField("MODULE_SUBTOTAL")
    private BigDecimal moduleSubtotal;

    /**
     * 真正的模块小结
     */
    @TableField("REAL_MODULE_SUBTOTAL")
    private BigDecimal realModuleSubtotal;

    /**
     * 成本价格
     */
    @TableField("COST_PRICE")
    private BigDecimal costPrice;

    /**
     * 需求量
     */
    @TableField("DEMAND_AMOUNT")
    private BigDecimal demandAmount;

    /**
     * 实际额
     */
    @TableField("REAL_AMOUNT")
    private BigDecimal realAmount;

    /**
     * 程序完成标签
     */
    @TableField("PROCEDURE_FINISH_TAG")
    private String procedureFinishTag;

    /**
     * 程序转移标签
     */
    @TableField("PROCEDURE_TRANSFER_TAG")
    private String procedureTransferTag;

      @TableField(fill = FieldFill.INSERT)
      @DateTimeFormat(pattern = "yyy-MM-dd HH:mm:ss")
      @JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyy-MM-dd HH:mm:ss")
    private Date createTime;

      @TableField(fill = FieldFill.INSERT_UPDATE)
      @DateTimeFormat(pattern = "yyy-MM-dd HH:mm:ss")
      @JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /**
     * 逻辑删除(0:true不删除,1:false删除)
     */
    @TableLogic
    private Integer deleted;


}
